

function fn(_arr){
    _arr.push(3)
    return _arr
}

let array = [1,2]

console.log(fn(array)) //[ 1, 2, 3 ]
console.log(array) // [ 1, 2, 3 ],原数组改变了


//如果将数组作为函数参数，不想影响原数组，在执行函数的时候先对数组进行拷贝，再操作
function fn(_arr){
    //先拷贝数组
    let arr = JSON.parse(JSON.stringify(_arr))
    //如果只需要浅拷贝
    //arr = [..._arr]
    arr.push(3)
    return arr
}
let arr2 = [1,2]
console.log(fn(arr2)) //[ 1, 2, 3 ]
console.log(arr2) // [ 1, 2],原数组不受影响